#include "test.h"
#include <array.hpp>
#include <list.hpp>

using namespace TingSTL;

int main() {
    // 测试 array
    array<A> array;
    array.push(1);
    array.push(2);
    array.insert(1, 111);
    array.remove(2);
    testPrint(array, "for_each array : ");
    testPrint(array.findIndex(2), "find 2 : ");
    array.clear();
    testPrint(array, "clear array");

    // 测试 link
    // 说明 list 单独实现了 iterator ， 包装了node* , 这里会和题目api
    // 出入，但是功能保持一致 ，(其实也有兼容题目要有版本的api);

    list<int> list1;

    auto pos1 = list1.emplace_back(1); // 对应作业push
    auto pos2 = list1.emplace_back(2);
    auto pos3 = list1.emplace(pos2, 3);
    auto ret = list1.find(2);
    list1.erase(ret);
    testPrint(list1, "for_each list");
    list1.clear();
    testPrint(list1, "clear list");
}
